home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 4
/
Aminet 4 - November 1994.iso
/
aminet
/
comm
/
cnet
/
cn305c_1.lha
/
InstallCNet
< prev
next >
Wrap
Text File
|
1994-02-13
|
25KB
|
1,137 lines
; $VER: CNet Install 1.05 (2.13.94)
(set CNetVersion "3.05c")
; CNet PRO 3 Installation script
;
; The publishers of CNet PRO 3 wish to extend many THANKS to Bob Maple
; for the creation of this install script, (version 1.0 (12.13.93))
; His elegant work has been chopped and hacked by others since then,
; so if you find something here that looks sloppy, DON'T BLAME BOB!
;
; Requires Commodore 'Installer' program
;
; Slight tweaks by Jim Selleck for CNet/3 release version 3.04, 3.05c
; This installation script is provided AS-IS, with no warranties expressed
; or implied. The authors will not be held responsible for any damages due
; to the use or mis-use of this installation script; using this script is
; entirely at your own risk.
;
; Define some global variables
;
(set Disk1 "CNet3_Disk_1:") ; Installation referenced by Disk1 and Disk2
(set Disk2 "CNet3_Disk_2:") ; since actual disk names change
; (set CNet_Dir "CNet:")
(set help-modify-self
(cat "If you have modified any of these files, "
"you might want to skip this part and manually "
"look for any changes/modify them yourself."
)
)
(set ask-install-part "Please select the partition/directory where you want the " )
(set ask-install-part2 " directory created." )
(set ask-install-nodir "(NOTE: A new directory will NOT be created.)\n" )
;
; BEGIN PROCEDURE DEFINITION
;
; The installer script basically consists of a series of calls to different
; procedures which install certain sets of data, depending on whether or not
; they are a new-installer or an update-installer.
;
(procedure CleanItUp
(
(run "delete ram:CStuff all")
)
)
(procedure Decompress
(
(working)
(makedir "ram:CStuff")
(set LHAString ("%slha x -a -I %s %s ram:CStuff/" Disk1 DecompFile DecompPat))
(run LHAString)
)
)
(procedure CopyExecutables1 ; Copies executables/etc from disk 1
(
(set DecompFile ("%scnet/bbsexec.lha" Disk1))
(set DecompPat "#?")
(Decompress)
(copyfiles
(source "RAM:CStuff")
(dest "CNET:")
(choices
"bbs" "control" "yank-task"
"config" "setpass" "unlock"
"close" "toss" "bbswake"
)
(optional "nofail" "askuser")
)
; Makes sure the PURE bit is set, saving millions of people asking
; why this new version eats so much RAM. :)
(protect "CNet:BBS" "+r +w +e +d +p")
(CleanItUp)
(set DecompFile ("%scnet/pfiles/bbs/pfiles_bbs.lha" Disk1))
(set DecompPat "#?")
(Decompress)
(copyfiles
(source "RAM:CStuff")
(dest "PFiles:BBS")
(all)
(optional "nofail" "askuser")
)
(CleanItUp)
)
)
(procedure CopyExecutables2 ; Copies executables from disk 2
(
(set SourcePath (tackon Disk2 "Workbench/c"))
(copyfiles
(source SourcePath)
(dest "C:" )
(all)
(optional "nofail" "askuser")
)
(set SourcePath (tackon Disk2 "Workbench/Fonts"))
(copyfiles
(source SourcePath)
(dest "FONTS:" )
(all)
(optional "nofail" "askuser")
)
(set SourcePath (tackon Disk2 "Workbench/L"))
(copyfiles
(source (tackon SourcePath "fifo-handler"))
(dest "L:" )
(optional "nofail" "askuser")
)
(message "\nThe cnet.library is a shared library which CNet "
"and other utilities require on your system."
(help "The CNet library is installed in LIBS: and is required "
"by CNet, and used by other external utilities, including "
"the possibility of some 3rd-party programs."
)
)
(set SourcePath (tackon Disk2 "Workbench/Libs"))
(copyfiles
(source (tackon SourcePath "cnet.library"))
(dest "Libs:" )
(files)
(optional "nofail" "askuser")
)
(message "\nThe fifo.library is a shared library which CNet "
"and other DOS utilities might require on your system."
(help "The FIFO library is required if you plan on running "
"any regular AmigaDOS programs as PFiles through the BBS."
)
)
(copyfiles
(source (tackon SourcePath "fifo.library"))
(dest "Libs:" )
(files)
(optional "nofail" "askuser")
)
(copyfiles
(source SourcePath)
(dest "LIBS:")
(pattern "xpr#?")
)
)
)
(procedure CopyStandards
(
(copyfiles
(source (tackon Disk1 "CNet"))
(dest "CNET:")
(choices
"bbsconfig3" "bbsevents" "bbsmenu"
"BIG_Numbers" "bbstext"
"bbsroom0" "bbslicense"
)
(optional "nofail" "askuser")
)
)
)
(procedure CopySpeller
(
(set DestPath
(askdir
(prompt "\nPlease select where you want to install the speller "
"master dictionary "
ask-install-nodir
)
(help "The dictionary can be anywhere you choose (suggestion: "
"CNet:Spell). Note that you must set up this path "
"with CONFIG as well. Consult your CNet manual."
)
(default "CNet:Spell")
)
)
(copyfiles
(source (tackon Disk2 "Spell"))
(dest DestPath)
(pattern "#?")
(files)
(optional "nofail" "askuser")
)
)
)
(procedure CopyMaints
(
(set DestPath
(askdir
(prompt "\nPlease select where you want your maintenance "
"executables to be installed "
ask-install-nodir
)
(help "The maintenance executables consist of programs "
"like 'count', 'missing', 'pointers' (see your "
"manual for more information).\n\n"
"Some people install them in different places, "
"according to how they have their PFiles setup. "
"A common installation place is a directory "
"called 'maintenance' inside PFiles:."
)
(default "PFiles:Maintenance")
)
)
(copyfiles
(source (tackon Disk1 "CNet/PFiles/Maintenance"))
(dest DestPath)
(pattern "#?")
(files)
(optional "nofail" "askuser")
)
)
)
(procedure CopyFIDOs
(
(set DestPath
(askdir
(prompt "\nPlease select where you want your FIDO maintenance "
"executables to be installed "
ask-install-nodir
)
(help "It's a good idea to throw all your FIDO executables "
"in a separate directory, just to keep things together.\n\n"
)
(default "PFiles:FIDO")
)
)
(copyfiles
(source (tackon Disk2 "FIDO"))
(dest DestPath)
(pattern "#?")
(files)
(optional "nofail" "askuser")
)
(makedir "Mail:Inbound")
(makedir "Mail:Outbound")
(makedir "Mail:Dupetables")
(makedir "Mail:Nodelist")
)
)
(procedure CopyUUCPs
(
(set DestPath
(askdir
(prompt "\nPlease select where you want your UUCP maintenance "
"executables to be installed "
ask-install-nodir
)
(help "It's a good idea to throw all your UUCP executables "
"in a separate directory, just to keep things together.\n\n"
)
(default "PFiles:UUCP")
)
)
(copyfiles
(source (tackon Disk2 "UUCP"))
(dest DestPath)
(pattern "#?")
(files)
(optional "nofail" "askuser")
)
)
)
(procedure CopyMenus
(
(set DecompFile ("%scnet/systext/systext.lha" Disk1))
(set DecompPat "menu/#?")
(Decompress)
(copyfiles
(source "ram:cstuff/menu")
(dest "SysText:Menu")
(all)
(optional "nofail" "askuser")
)
(CleanItUp)
)
)
(procedure CopyLicense
(
(if (= (exists "CNet:bbslicense") 0)
(copyfiles
(source (tackon Disk1 "cnet/bbslicense"))
(dest "CNet:")
(files)
(optional "nofail" "askuser")
)
)
)
)
(procedure CopyVDEs
(
(set DecompFile ("%scnet/systext/systext.lha" Disk1))
(set DecompPat "vde/#?")
(Decompress)
(copyfiles
(source "ram:cstuff/vde")
(dest "SysText:VDE")
(all)
(optional "nofail" "askuser")
)
(CleanItUp)
)
)
(procedure CopyHelp
(
(set DecompFile ("%scnet/systext/systext.lha" Disk1))
(set DecompPat "help/#?")
(Decompress)
(copyfiles
(source "ram:cstuff/help")
(dest "SysText:Help")
(all)
(optional "nofail" "askuser")
)
(CleanItUp)
)
)
(procedure CopyTextMenu
(
(copyfiles
(source (tackon Disk1 "cnet/bbstext"))
(dest "CNet:")
(newname (cat "bbstext_" CNetVersion))
(files)
(optional "nofail" "askuser")
)
(copyfiles
(source (tackon Disk1 "cnet/bbsmenu"))
(dest "CNet:")
(newname (cat "bbsmenu_" CNetVersion))
(files)
(optional "nofail" "askuser")
)
)
)
(procedure CopyNew
(
(set DecompFile ("%scnet/systext/systext.lha" Disk1))
(set DecompPat "new/#?")
(Decompress)
(copyfiles
(source "ram:cstuff/new")
(dest "SysText:New")
(all)
(optional "nofail" "askuser")
)
(CleanItUp)
)
)
;
; BEGIN MASTER INSTALL PROCEDURES
;
; The following two procedures handle new installations and update
; installations, calling the proper procedures defined above as well as
; doing other specialized tasks.
;
(procedure DoUpdateInstall
(
(askdisk
(dest (substr Disk1 0 (- (strlen Disk1) 1)))
(prompt "\nPlease insert Disk 1 of CNet Amiga."
)
(help "Insert the CNet Amiga disk labeled as disk 1. "
"You can put it in any drive--and, if you have two "
"floppy drives, you can also put disk 2 in your other "
"free drive to save yourself time later."
)
)
(CopyExecutables1)
(CopyTextMenu)
(CopyLicense)
(CopyVDEs)
(CopyMaints)
(if
(askbool
(prompt "\nDo you want to re-install the menu files?")
(help "Copies all the menu files into SYSTEXT:Menu. "
help-modify-self
)
)
; TRUE (Yes) statement
(
(CopyMenus)
)
)
(if
(askbool
(prompt "\nDo you want to re-install the help files?")
(help "Copies all the help files into SYSTEXT:Help. "
help-modify-self
)
)
; TRUE (Yes) statement
(
(CopyHelp)
)
)
(if
(askbool
(prompt "\nDo you want to re-install the new-user files?")
(help "Copies all the new-user help files into SYSTEXT:New.\n\n"
"The new-user files are all the pieces of text "
"which describe questions new users are asked when "
"logging in, as well as the public and sysop questions.\n\n"
help-modify-self
)
)
; TRUE (Yes) statement
(
(CopyNew)
)
)
(askdisk
(dest (substr Disk1 0 (- (strlen Disk1) 1)))
(prompt "\nPlease insert Disk 2 of CNet Amiga."
)
(help "Insert the CNet Amiga disk labeled as disk 2."
)
)
(CopyExecutables2)
(if
(askbool
(prompt "\nDo you want to re-install the CNet speller dictionary?" )
(help "This master-dictionary rarely changes, and chances "
"are you have added words to it yourself already. "
"It is recommended that you skip this part of the "
"update installation if you have made any changes "
"to your dictionary."
)
)
; TRUE (Yes) statement
(
(CopySpeller)
)
)
(if
(askbool
(prompt "\nDo you want to re-install the FIDO executables?")
(help "This part is presented as an option because not "
"everyone runs the FIDO network.\n\n"
"See your CNet manual for information on the CNet "
"FIDO tosser, and the FIDO import/exporters."
)
)
; TRUE Yes statement
(
(CopyFIDOs)
)
)
(if
(askbool
(prompt "\nDo you want to re-install the UUCP executables?")
(help "This part is presented as an option because not "
"everyone runs the UUCP/Usenet network.\n\n"
"See your CNet manual for information on the CNet "
"UUCP importers."
)
)
; TRUE Yes statement
(
(CopyUUCPs)
)
)
(message
"\nUpdate installed. Please note that CNet:BBSTEXT and "
"CNet:BBSMENU were NOT installed. Since most CNet SysOps "
"have heavily modified these files, there are several utilities "
"available which can detect changes and help you transfer those "
"changes into your CURRENT files, saving you from having to "
"start over completely from scratch.\n\nCheck the updating "
"section of your CNet manual, as well as the updating directory "
"on Disk 2. There may be conversion files you need to run or "
"other file renaming procedures needed before you can safely "
"run your CNet update."
)
)
)
(procedure DoNewInstall
(
(message
"\nCNet Amiga has many different data files, and most related "
"files are grouped into directories, so that you can choose "
"different places for each set of data to go (for instance, "
"you might put your menus, help files, and other small data "
"sets on one small HD partition, while you might want your "
"message bases on a larger HD partition.)\n\n"
"I will now ask you to choose a place for each data set. "
"Consult your CNet Amiga manual for information on what is "
"what, or use the HELP key for information."
)
(set DestDir
(askdir
(prompt ask-install-part "master CNET" ask-install-part2
)
(help "The master CNet directory is the home of the "
"main executable, as well as it's control files "
"like Config, your modem setups, BBSTEXT, etc.\n\n"
"It's suggested that you choose a medium-sized "
"partition and use this as a 'base' for all your "
"other directories, like GFiles, Mail, News, etc."
)
(default "Work:")
)
)
(makedir (tackon DestDir "CNet"))
(makeassign "CNet" (tackon DestDir "CNet"))
(message
"\nAn assign called CNET: has been made to the master "
"directory just created. Many of the following "
"installation questions might refer to this assignment."
)
(set DestDir
(askdir
(prompt ask-install-part "GFILES" ask-install-part2
)
(help "The GFiles directory holds any extra text-files "
"(or [G]eneral Files) you want to install for your "
"users.\n\n"
)
(default "CNet:")
)
)
(makedir (tackon DestDir "GFiles"))
(makeassign "GFiles" (tackon DestDir "GFiles"))
(makedir "GFiles:Data")
(set DestDir
(askdir
(prompt ask-install-part "PFILES" ask-install-part2
)
(help "The PFiles directory holds a series of executables "
"C-Net requires, as well as serving as a place to "
"store any extra PFiles you wish to install for your "
"users, like games.\n\n"
)
(default "CNet:")
)
)
(set DestDir (tackon DestDir "PFiles"))
(makedir DestDir)
(makeassign "PFiles" DestDir)
(makedir "PFiles:Data")
(makedir (tackon DestDir "BBS"))
(set DestDir
(askdir
(prompt ask-install-part "MAIL" ask-install-part2
)
(help "The Mail directory holds a series of directories "
"(one for each user) in which unique user data is "
"stored; user signature files, question files, their "
"e-mail, etc."
)
(default "CNet:")
)
)
(set DestDir (tackon DestDir "Mail"))
(makedir DestDir)
(makeassign "Mail" DestDir)
(makedir (tackon DestDir "Users"))
(set DestDir
(askdir
(prompt ask-install-part "NEWS" ask-install-part2
)
(help "The News directory holds newsfiles; text files "
"you can create which are shown to users when they "
"login. Called 'bulletins' on some systems."
)
(default "CNet:")
)
)
(makedir (tackon DestDir "News"))
(makeassign "News" (tackon DestDir "News"))
(makedir "News:Data")
(set DestDir
(askdir
(prompt ask-install-part "BASE0" ask-install-part2
)
(help "The Base0 directory holds the datafiles to your "
"message bases. Messages are stored here, as well as "
"entry files, etc."
)
(default "CNet:")
)
)
(makedir (tackon DestDir "Base0"))
(makeassign "Base0" (tackon DestDir "Base0"))
(makedir "Base0:main")
(makedir "Base0:main/data")
(set DestDir
(askdir
(prompt ask-install-part "UDBASE0" ask-install-part2
)
(help "The UDBase0 directory holds the datafiles to your "
"file (upload/download) bases. Note that individual "
"subboards can be split across multiple partitions, "
"and files WON'T necessarily get uploaded here. See "
"your CNet manual for information."
)
(default "CNet:")
)
)
(makedir (tackon DestDir "UDBase0"))
(makeassign "UDBase0" (tackon DestDir "UDBase0"))
(makedir "UDBase0:main")
(makedir "UDBase0:main/data")
(set DestDir
(askdir
(prompt ask-install-part "SYSDATA" ask-install-part2
)
(help "The SysData directory holds critical BBS data like "
"the master user-file and it's associated index files, "
"as well as your BBSList files, log files, and "
"voting booth information."
)
(default "CNet:")
)
)
(set DestDir (tackon DestDir "SysData"))
(makedir DestDir)
(makeassign "SysData" DestDir)
(makedir (tackon DestDir "Log"))
(makedir (tackon DestDir "Vote"))
(makedir (tackon DestDir "BBSList"))
(set DestDir
(askdir
(prompt ask-install-part "SYSTEXT" ask-install-part2
)
(help "The SysText directory holds all text-files used "
"throughout the BBS like menus, help files, and new "
"user files, as well as your VDE (Visual Data Editor) "
"files required by the BBS for editing certain data."
)
(default "CNet:")
)
)
(set DestDir (tackon DestDir "SysText"))
(makedir DestDir)
(makeassign "SysText" DestDir)
(makedir (tackon DestDir "VDE" ))
(makedir (tackon DestDir "Menu"))
(makedir (tackon DestDir "Help"))
(makedir (tackon DestDir "New" ))
(askdisk
(dest (substr Disk1 0 (- (strlen Disk1) 1)))
(prompt "\nPlease insert Disk 1 of CNet Amiga."
)
(help "Insert the CNet Amiga disk labeled as disk 1. "
"You can put it in any drive--and, if you have two "
"floppy drives, you can also put disk 2 in your other "
"free drive to save yourself time later."
)
)
(CopyExecutables1)
(CopyMenus)
(CopyHelp)
(CopyVDEs)
(CopyNew)
(CopyMaints)
(CopyStandards)
(askdisk
(dest (substr Disk2 0 (- (strlen Disk1) 1)))
(prompt "\nPlease insert Disk 2 of CNet Amiga."
)
(help "Insert the CNet Amiga disk labeled as disk 2."
)
)
(CopyExecutables2)
(if (askbool
(prompt "\nWould you like to install the built-in spell "
"checker?"
)
(help "CNet's VisualEd editor has a built-in spell "
"checker. However, in order for the spell checker "
"to be activated, the master dictionary must be "
"installed.\n\nIn addition, a couple of utilities "
"will be installed which allow you to compress and "
"decompress the master dictionary so that you may "
"add/remove words from it."
)
)
; TRUE statement
(
(CopySpeller)
(set SplLine1 ( "copy \"%s\" RAM:" (tackon DestPath "dict" ) ))
(set SplLine2 ( "copy \"%s\" RAM:" (tackon DestPath "dict.index") ))
(if
(askbool
(prompt "\nWould you like to run the speller "
"out of RAM?"
)
(help "Keeping the CNet dictionary in RAM "
"will help speed up spell checks. "
"If you choose to install the dictionary "
"in RAM, a statement will be added to your "
"S:User-Startup file to automatically copy "
"it into RAM on startup.\n\n"
"Also remember that you should then set the "
"speller path through CONFIG to be RAM:, not "
("\"%s\" (where you installed the speller.)" DestPath )
)
)
; TRUE statement
(
(message
"\nRemember to set your speller path to RAM: "
"when you configure your BBS with CONFIG."
)
)
; FALSE statement
(
(set SplLine1 (cat "; " SplLine1))
(set SplLine2 (cat "; " SplLine2))
)
)
)
)
(CopyFIDOs)
(if (askbool
(prompt "\nWould you like to install UUCP network "
"utilities?"
)
(help "CNet includes support for the Usenet network. If "
"you plan on being a part of this network, several "
"utilities need to be installed which handle the "
"import of network messages and mail."
)
)
; TRUE statement
(
(CopyUUCPs)
)
)
(if (askbool
(prompt "\nDo you want to run CNet resident?")
(help "CNet is a 'pure' program, meaning it can be "
"made resident. Programs which are resident "
"have the distinct advantage of being re-entrant; "
"meaning if you have 3 copies of it running, there "
"is really only 1 copy taking up memory, with three "
"different sets of variables.\n\n"
"This saves a LOT of memory when running CNet in a "
"multi-user enviornment, because you are saving about "
"260k of RAM for *EVERY* extra port you have loaded.\n\n"
"Even if you are only running 1 line, it's a good idea "
"to make it resident, since you will probably have a 'port 0' "
"or other local port up sometimes.\n\n"
"Note that it does NOT waste memory to have CNet "
"made resident even if you are only running 1 port."
)
)
; TRUE statement
(
(set ResFlag "")
)
; FALSE statement
(
(set ResFlag "; ")
(message "\nThe BBS will NOT be made resident. However, "
"in your S:User-Startup file, the lines responsible "
"for making the BBS resident will appear, but prefixed "
"with semicolons (;), which comments them out.\n\n"
"Should you wish to run the BBS resident in the future, "
"all that needs to be done is removal of those semicolons."
)
)
)
(if (askbool
(prompt "\nDo you want to run CNet automatically when your system "
"is started?"
)
(help "If you wish CNet to automatically be started when your "
"system is booted, answer YES. It is a good idea to have "
"CNet run automatically, especially in case of a power "
"outage and when you aren't around to manually startup "
"the BBS."
)
)
; TRUE statement
(
(set RunFlag "")
)
; FALSE statement
(
(set RunFlag "; ")
(message "\nThe BBS will NOT be automatically run on startup. However, "
"in your S:User-Startup file, the line responsible "
"for starting the BBS will appear, but prefixed "
"with a semicolon (;), which comments it out.\n\n"
"Should you wish to run the BBS automatically on startup in the future, "
"all that needs to be done is the removal of that semicolon."
)
)
)
(startup "CNet Amiga Pro 3"
(prompt "\nSeveral assignments need to be made to your S:User-Startup "
"file which allow CNet to find all the files and directories "
"we've just installed.\n\n"
"In addition, other actions required by CNet will be "
"added."
)
(help "CNet requires several assignments so that it can find "
"all it's files. Many assign statements will be made "
"to your S:User-Startup file, and will also launch "
"several of the handlers CNet requires, set the stack "
"requirement automatically, etc."
)
(command
("\n" )
("assign CNet: \"%s\"\n" (getassign "CNet" ))
("assign SysText: \"%s\"\n" (getassign "SysText" ))
("assign SysData: \"%s\"\n" (getassign "SysData" ))
("assign News: \"%s\"\n" (getassign "News" ))
("assign GFiles: \"%s\"\n" (getassign "GFiles" ))
("assign PFiles: \"%s\"\n" (getassign "PFiles" ))
("assign Mail: \"%s\"\n" (getassign "Mail" ))
("assign Base0: \"%s\"\n" (getassign "Base0" ))
("assign UDBase0: \"%s\"\n" (getassign "UDBase0" ))
("\n; You may add other ASSIGNs here as necessary, for example")
("\n; for Base1: and UDBase1: etc. Consult your manual!\n")
("\n; Sets up/launches CNet Amiga\n\n" )
("run <>NIL: L:FIFO-Handler\n" )
("mount <>NIL: PIPE:\n" )
("rexxmast >NIL:\n\n" )
("stack 40000\n\n" )
("%s\n" SplLine1 )
("%s\n\n" SplLine2 )
("%sresident PURE CNet:bbs CNet:bbs ADD\n" ResFlag )
("%sresident PURE Pfiles:bbs/vote Pfiles:bbs/vote ADD\n" ResFlag )
("%sresident PURE Pfiles:bbs/join Pfiles:bbs/join ADD\n" ResFlag )
("\n%srun <>NIL: CNet:Control\n" RunFlag )
)
)
; (textfile
;
; (dest "S:CNet-Startup")
; (append
;
; )
; )
(if
(askbool
(prompt "\nInstallation complete!\n\n You should now further configure "
"your system using C-Net's CONFIG program.\n\n"
"Do you wish to run CONFIG now?"
)
(help "CONFIG is a mouse-driven program that allows you "
"to configure many imporant things about your system, "
"such as new user defaults, message limits, paths to "
"system data, and much much more. There are many things "
"that require your attention before the BBS is ready "
"to go on-line. See your CNet manual for more info."
)
)
; TRUE statement
(
(run "run CNet:Config" )
)
)
)
)
;
; BEGIN MAIN INSTALLATION SEQUENCE TREE
;
; The welcome statement determines whether or not to do an update
; installation or a new-user installation, and then calls a master-procedure
; defined above which handles that type of installation appropriately.
;
(welcome
(set @default-dest "CNet:")
(if
(exists "CNet:bbs" (noreq))
; TRUE statement
(
(set NewInstall 0)
(user 2)
(message
"\nThe system has detected that you already have "
"CNet Amiga installed.\n\nThe installer will perform "
"an update installation, only "
"copying over the necessary executables, and will "
"only copy files which you might have customized "
"(menus, help files, etc) if you ask it to."
)
)
; FALSE statement
(
(set NewInstall 1)
(message
"\nThe system has detected that you are installing "
"CNet for the first time.\n\nHave your manual handy, "
"and remember the HELP key works in most places."
)
)
)
)
(if NewInstall
; TRUE statement
(
(DoNewInstall)
)
; FALSE statement
(
(DoUpdateInstall)
)
)